跳到主要内容

JavaScript 解构赋值

解构赋值

  • 数组赋值给变量:let [x, y, z] = [hello, js, es6]

  • 嵌套赋值:[x, [y, z]] = [...]

  • 忽略:[, , z] = []

  • 对象赋值给变量:let {name, age, passport} = person

  • 嵌套:let {name, address: {city, zip}} = person,注意这里 address 不能引用。

  • 重命名:let {name, passport:id} = person

  • 默认值:let {name, single=true} = person,防止返回 undefined

  • 如果变量已经声明了,再次赋值需要加括号:({x, y} = { name: '小明', x: 100, y: 200})

例如,接收对象作为参数时可以直接绑定:


function buildDate({year, month, day, hour=0, minute=0, second=0}) {

return new Date(year + '-' + month + '-' + day + ' ' + hour + ':' + minute + ':' + second);

}